# 动物类
# 定义动物类
class Animal:
    def call(self):
        print('动物叫声')
# 定义狗类 继承动物类
class Dog(Animal):
    def call(self):
        print('汪汪汪')
# 定义猫类 继承动物类
class Cat(Animal):
    def call(self):
        print('喵~喵')

class Person(Animal):
    # def call(self):
    #     print('你这个傻x')
    pass

# 传统调用方式
# dog = Dog()
# cat = Cat()
# dog.call()
# cat.call()
# 定义统一调用接口
def do_call(obj):
    print('前方添加1')
    obj.call()
    print('后方添加2')

# 其他语言
# def do_call(obj Animal):
#         obj.call()
do_call(Dog())
do_call(Cat())
do_call(Person())